home *** CD-ROM | disk | FTP | other *** search
/ ftp.mactech.com 2010 / ftp.mactech.com.tar / ftp.mactech.com / machack / Hacks97 / WarriorsProgress.sit / Warrior’s Progress / source code / Source / Libraries / Windows / WindowDefinition.h < prev    next >
Text File  |  1997-06-28  |  2KB  |  75 lines

  1. // WindowDefinition.h
  2.  
  3. #ifndef WindowDefinition_h
  4. #define WindowDefinition_h
  5.  
  6. #ifndef WindowObject_h
  7. #include "WindowObject.h"
  8. #endif
  9.  
  10. class WindowDefinition
  11.   {
  12.     private:
  13.         WindowObject::Definition procedure;
  14.         Rectangle frameSize;
  15.         
  16.         bool closeable;
  17.         bool resizable;
  18.         bool zoomable;
  19.         
  20.         bool titled;
  21.         bool modal;
  22.         bool floating;
  23.         
  24.     public:
  25.         WindowDefinition( WindowObject::Definition theProcedure,
  26.                                 Rectangle theFrameSize,
  27.                                 bool isCloseable,
  28.                                 bool isResizable,
  29.                                 bool isZoomable,
  30.                                 bool isTitled,
  31.                                 bool isModal,
  32.                                 bool isFloating )
  33.           : procedure( theProcedure ),
  34.              frameSize( theFrameSize ),
  35.              closeable( isCloseable ),
  36.              resizable( isResizable ),
  37.              zoomable( isZoomable ),
  38.              titled( isTitled ),
  39.              modal( isModal ),
  40.              floating( isFloating )
  41.           {}
  42.         
  43.         WindowObject::Definition Procedure() const
  44.                                                         { return procedure; }
  45.         
  46.         const Rectangle& FrameSize() const    { return frameSize; }
  47.  
  48.         bool Closeable() const                    { return closeable; }
  49.         bool Resizable() const                    { return resizable; }
  50.         bool Zoomable() const                    { return zoomable; }
  51.         
  52.         bool Titled() const                        { return titled; }
  53.         bool Modal() const                        { return modal; }
  54.         bool Floating() const                    { return floating; }
  55.         
  56.         enum NoCloseBox    { noCloseBox };
  57.         enum NoGrowBox        { noGrowBox };
  58.         enum NoZoomBox        { noZoomBox };
  59.         
  60.         static const WindowDefinition& Document();
  61.         static const WindowDefinition& Document( NoCloseBox );
  62.         static const WindowDefinition& Document( NoGrowBox );
  63.         static const WindowDefinition& Document( NoCloseBox, NoGrowBox );
  64.         static const WindowDefinition& Document( NoZoomBox );
  65.         static const WindowDefinition& Document( NoCloseBox, NoZoomBox );
  66.         static const WindowDefinition& Document( NoGrowBox, NoZoomBox );
  67.         static const WindowDefinition& Document( NoCloseBox, NoGrowBox, NoZoomBox );
  68.         
  69.         static const WindowDefinition& Dialog();
  70.         static const WindowDefinition& MovableModal();
  71.         static const WindowDefinition& MovableModal( NoCloseBox );
  72.   };
  73.  
  74. #endif
  75.